package org.jsola.hr.vo;


import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.jsola.core.vo.BaseVO;
import org.jsola.salary.vo.DetailsAmountVO;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import static org.jsola.salary.example.CustomerDetailsNewExample.*;
import static org.jsola.salary.example.CustomerDetailsNewExample.E_SOCIAL_MONTHLY;

@EqualsAndHashCode(callSuper = true)
@ApiModel(description = "公司某月份的月工资")
@Data
public class HrMonthlySalarySummaryNewVO extends BaseVO {


    private static final long serialVersionUID = 1L;

    @ApiModelProperty(notes = "汇总名称")
    private String name;

    @ApiModelProperty(notes = N_YEARLY, example = E_YEARLY)
    private Integer yearly;

    @ApiModelProperty(notes = N_MONTHLY, example = E_MONTHLY)
    private Integer monthly;

    @ApiModelProperty(notes = N_SALARY_YEARLY, example = E_SALARY_YEARLY)
    private Integer salaryYearly;

    @ApiModelProperty(notes = N_SOCIAL_YEARLY, example = E_SOCIAL_YEARLY)
    private Integer socialYearly;

    @ApiModelProperty(notes = N_SALARY_MONTHLY, example = E_SALARY_MONTHLY)
    private Integer salaryMonthly;

    @ApiModelProperty(notes = N_SOCIAL_MONTHLY, example = E_SOCIAL_MONTHLY)
    private Integer socialMonthly;

    @ApiModelProperty(notes = "个人所属期")
    private String personalPeriod;

    @ApiModelProperty(notes = "客户明细类型")
    private String customerDetailsType;

    @ApiModelProperty(notes = "计薪人数")
    private Integer empNumber;

    @ApiModelProperty(notes = "公司Ids")
    private List<String> companyIds;

    @ApiModelProperty(notes = "类型;用工单位分组或用工单位")
    private String subjectType;

    @ApiModelProperty(notes = "业务Id")
    private String subjectId;

    @ApiModelProperty(notes = "客户明细列表")
    private List<Long> customerDetailsIds;

    @ApiModelProperty(notes = "子对象")
    private List<DetailsAmountVO> detailsAmountVOList;

    @ApiModelProperty(notes = N_GMT_CREATE, example = E_GMT_CREATE)
    private Date gmtCreate;

    @ApiModelProperty(notes = "创建用户Id")
    private String createUserId;

    @ApiModelProperty(notes = "创建用户名称")
    private String createUserName;

}
